home *** CD-ROM | disk | FTP | other *** search
- asm void ATOMIC_ORL(addr, flag)
- {
- %reg addr; con flag;
- lock orl flag, (addr)
- %reg addr; reg flag;
- lock orl flag, (addr)
- %reg addr; mem flag;
- movl flag, %edx
- lock orl %edx, (addr)
- %mem addr; con flag;
- movl addr, %ecx
- lock orl flag, (%ecx)
- %mem addr; reg flag;
- movl addr, %ecx
- lock orl flag, (%ecx)
- %mem addr; mem flag;
- movl addr, %ecx
- movl flag, %edx
- lock orl %edx, (%ecx)
- }
-
- asm void ATOMIC_ANDL(addr, flag)
- {
- %reg addr; con flag;
- lock andl flag, (addr)
- %reg addr; reg flag;
- lock andl flag, (addr)
- %reg addr; mem flag;
- movl flag, %edx
- lock andl %edx, (addr)
- %mem addr; con flag;
- movl addr, %ecx
- lock andl flag, (%ecx)
- %mem addr; reg flag;
- movl addr, %ecx
- lock andl flag, (%ecx)
- %mem addr; mem flag;
- movl addr, %ecx
- movl flag, %edx
- lock andl %edx, (%ecx)
- }
-
-